﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using BDSUETableAdapters;

public partial class GestionarPeriodosPracticas_FrModPeriodoPracticas : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Request.QueryString["idPerdiodo"] != null)
        {
            if (!Page.IsPostBack)
            {
                CargarPeriodo(Convert.ToInt32(Request.QueryString["idPerdiodo"]));
            }
        }

    }

    private void CargarPeriodo(int idPeriodo)
    {
        GestionarPeriodosPracticas periodo = new GestionarPeriodosPracticas();
        DataTable dt = periodo.ObtPeriodoEspecifico(idPeriodo);

        try
        {
            TextBoxNombreProceso.Text = dt.Rows[0]["nombrePeriodo"].ToString();
            CalendarFechaInicio.SelectedDate = Convert.ToDateTime(dt.Rows[0]["fechaInicio"].ToString());
            CalendarFechaLimite.SelectedDate = Convert.ToDateTime(dt.Rows[0]["fechaCierre"].ToString());
            DropDownListEstado.SelectedValue = dt.Rows[0]["estadoPeriodo"].ToString();

        }
        catch
        {
            Response.Redirect("FrConsPeriodosPracticas.aspx");
        }

    }

    protected void CalendarFechaInicio_SelectionChanged(object sender, EventArgs e)
    {
        CalendarFechaInicio.Visible = false;

    }

    /// <summary>
    /// se quitan las fechas del formulario que no correspondan al mes actual   
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void CalendarFechaInicio_DayRender(object sender, DayRenderEventArgs e)
    {
        if (e.Day.IsOtherMonth)
        {
            e.Cell.Text = "";

        }
    }

    protected void ButtonGuardar_Click(object sender, EventArgs e)
    {
        try
        {
            GestionarPeriodosPracticas gpp = new GestionarPeriodosPracticas();
            gpp.ModPeriodo(Convert.ToInt32(Request.QueryString["idPerdiodo"]), CalendarFechaInicio.SelectedDate.ToShortDateString(), CalendarFechaLimite.SelectedDate.ToShortDateString(), TextBoxNombreProceso.Text, DropDownListEstado.SelectedItem.Text);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "$.modaldialog.success('Periodo modificado <br /><div align=\"center\"><a href=\"FrConsPeriodosPracticas.aspx\"><img src=\"../images/ok2.png\"/></a></div>');", true);
        }
        catch
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "$.modaldialog.error('No se pudo realizar la modificación', {timeout: 3 , showClose: false });", true);
        }
    }
    protected void ButtonEliminar_Click(object sender, EventArgs e)
    {
        try
        {
            GestionarPeriodosPracticas periodo = new GestionarPeriodosPracticas();
            periodo.ElimPeriodo(Convert.ToInt32(Request.QueryString["idPerdiodo"]));
            ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "$.modaldialog.success('Periodo eliminado <br /><div align=\"center\"><a href=\"FrConsPeriodosPracticas.aspx\"><img src=\"../images/ok2.png\"/></a></div>');", true);
        }
        catch
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "$.modaldialog.error('No se pudo eliminar, tiene prácticas asociadas', {timeout: 3 , showClose: false });", true);
        }
    }
    protected void ButtonCancelar_Click(object sender, EventArgs e)
    {
        Response.Redirect("FrConsPeriodosPracticas.aspx");

    }
}
